package com.ruoyi.user.service;

import com.ruoyi.common.core.cg.pojo.Group;
import com.ruoyi.common.core.cg.pojo.JoinGroupInfo;
import com.ruoyi.common.core.cg.dto.JoinGroupParams;
import com.ruoyi.common.core.cg.pojo.User;
import com.ruoyi.common.core.cg.result.PageResult;
import com.ruoyi.common.core.cg.dto.QueryPageBean;
import com.ruoyi.common.core.cg.result.Result;

import java.util.List;
import java.util.Map;

public interface GroupService {
    // 分页查询团
    PageResult findPage(QueryPageBean queryPageBean);
    // 查询团
    Result findById(Integer id);
    // 查询进团信息
    JoinGroupInfo findJoinGroupInfo(Integer id);
    // 拼团
    Result joinGroup(JoinGroupParams joinGroupParams);
    // 查询该团所有的成员
    List<User> findGroupAllMemberByGroupId(Integer id);
    // 查询用户所处团的所有用户
    List<User> findGroupMemberByGroupId(Integer id, Integer startIndex, Integer endIndex);
    // 查询过期的团
    List<Integer> findByTime();
    // 修改拼团状态
    void batchUpdateState(List<Integer> groupIdList);
    // 查询所有
    List<Map<String,Object>> findAll();
}
